package cn.edu.neu.lab603.cloudeval.strategy.policy

import cn.edu.neu.lab603.cloudeval.entity.{DataCenter, PhysicalMachine => Host, VirtualMachine => VM}

/** 虚拟机的选择策略。
  *
  * Created by yfwz100 on 2016/11/3.
  */
trait VMSelectionPolicy {

  /** 从主机中选择最适合迁移的虚拟机。
    *
    * @param host       物理主机
    * @param dataCenter 数据中心
    * @return 虚拟机
    */
  def getVMFromMigratedHost(host: Host)(implicit dataCenter: DataCenter): Iterable[VM]
}
